ERASE ABCS$:DIM ABCS$(185) ON BREAK GOSUB Teflon BREAK ON teetse=1 Main: GOSUB UserMaint CHAIN "df0:Sysop",10,ALL Modem: IF rings=0 THEN OtherModem x=FRE(0) FOR j=1 TO LEN(a$):p$=MID$(a$,j,1) PRINT p$;:PRINT#1,p$;:NEXT j a$="":p$="":RETURN OtherModem: x=FRE(0) FOR j=1 TO LEN(a$):p$=MID$(a$,j,1) PRINT p$;:NEXT j a$="":p$="":RETURN Answers: telly=0:t$="":t=0:i$="":ch$="":alter=0:IF rings=0 THEN SomeAnswers WHILE 1 AND alter<1 WHILE LOC(1)<>0 ch$=INPUT$(1,1) equivs=ASC(ch$) AND 127:IF equivs<>1 THEN ch$=CHR$(equivs) i$=i$+ch$:equivs=0 telly=telly+1:IF telly=78 THEN ch$=r$:telly=0 IF ch$=CHR$(8) AND LEN(i$)>=2 THEN i$=LEFT$(i$,LEN(i$)-2):telly=telly-1 IF ch$=CHR$(10) OR ch$=CHR$(13) OR ch$=r$ THEN alter=3:telly=0 a$=ch$:GOSUB Modem:ch$="" WEND ch$=INKEY$:i$=i$+ch$ a$=ch$:GOSUB Modem IF ch$=CHR$(10) OR ch$=CHR$(13) OR ch$=r$ THEN telly=0:GOTO MoreAnswers IF ch$=CHR$(8) AND LEN(i$)>=2 THEN i$=LEFT$(i$,LEN(i$)-2) ch$="":connect=PEEK (&Hbfd*&H1000+&H0):IF connect<>0 THEN okp=0:RETURN WEND IF i$<>"" THEN MoreAnswers SomeAnswers: ch$=INKEY$:i$=i$+ch$:a$=ch$:GOSUB Modem IF ch$= CHR$(10) OR ch$=CHR$(13) OR ch$=r$ THEN MoreAnswers IF ch$=CHR$(8) AND LEN(i$)>=2 THEN i$=LEFT$(i$,LEN(i$)-2) ch$="" GOTO SomeAnswers MoreAnswers: IF okp<>1 THEN RETURN IF i$="" THEN ch$="":GOTO Answers t$=i$:IF LEN(t$)>80 THEN t$=LEFT$(t$,78)+r$ RETURN SeqRead: ERASE ABCS$:DIM ABCS$(185) a$=r$+r$+"[> K Quits/ Space pauses until <]"+r$:GOSUB Modem OPEN "I", #3, file$ ReadSeq: j=0:L=0:k=0 WHILE NOT EOF(3) x=FRE(0):j=j+1 LINE INPUT#3,ABCS$(j):ABCS$(j)=ABCS$(j)+r$ WEND CLOSE#3:k=j:L=0 WHILE L0 ch$=INPUT$(1,1):equivs=ASC(ch$) AND 127:IF equivs<>1 THEN ch$=CHR$(equivs) i$=i$+ch$:equivs=0:a$=ch$:GOSUB Modem WEND IF i$<>"" THEN MoreCheckSeq SomeCheckSeq: ch$=INKEY$:i$=i$+ch$:a$=ch$:GOSUB Modem MoreCheckSeq: IF i$=CHR$(32) THEN GOSUB Answers IF i$=CHR$(75) OR i$=CHR$(107) THEN L=k+1 WEND ERASE ABCS$:DIM ABCS$(185):RETURN A1: GOSUB Modem:GOSUB Answers:RETURN CheckConTime: Contime$=TIME$:ChEntTime$=RIGHT$(Enttime$,5):Contime$=RIGHT$(Contime$,5) Contime=VAL(Contime$):Enttime=VAL(ChEntTime$) IF Contime-Enttime>30 AND Veru$="000" THEN okp=0:RETURN IF Contime-Enttime>45 AND Veru$="007" THEN okp=0:RETURN okp=1:RETURN UserMaint: a$=r$+"E- Edit P- Print File S- Scan X- Exit:":GOSUB A1:MenS$=UCASE$(LEFT$(t$,1)) IF MenS$="E" THEN UserEdit IF MenS$="P" THEN UserFilePrint IF MenS$="S" THEN UserSearch IF MenS$="X" THEN CLOSE#4:RETURN a$=r$+"No such Command!":GOSUB Modem:GOTO UserMaint UserEdit: a$=r$+"G- Get User P- Print User C- Change Option S- Save User X- Exit:":GOSUB A1 MenS$=UCASE$(LEFT$(t$,1)) IF MenS$="G" THEN GetUser IF MenS$="P" THEN GOSUB PrintUser:GOTO UserEdit IF MenS$="S" THEN SaveUser IF MenS$="C" THEN ChangeUser IF MenS$="X" THEN CLOSE#4:GOTO UserMaint GOTO UserEdit GetUser: a$=r$+"Find by (N)ame or by (I)D :":GOSUB A1:IF LEFT$(t$,1)=CHR$(10) OR LEFT$(t$,1)=CHR$(13) THEN UserEdit MenS$=UCASE$(LEFT$(t$,1)):IF MenS$="I" THEN detedt=1:GOTO MoreGetUser detedt=0 a$="Enter User's First Name:":GOSUB A1:GetName1$=UCASE$(LEFT$(t$,LEN(t$)-1)):IF LEN(Name1$)>9 THEN Name1$=LEFT$(Name1$,9) a$=r$+"Enter User's Last Name:":GOSUB A1:GetName2$=UCASE$(LEFT$(t$,LEN(t$)-1)):IF LEN(Name2$)>15 THEN Name2$=LEFT$(Name2$,15) UsernaMe$=GetName1$+" "+GetName2$+"=":UsernaMe=LEN(UsernaMe$):Ddt=0:Dch=0 WHILE Ddt<1 Dch=Dch+1:uil$=STR$(Dch):uil$=RIGHT$(uil$,1) OPEN "I",#3,"df1:Storehouse"+uil$ Dxq=0:Lmn=0:Dab=0 WHILE NOT EOF(3) Dxq=Dxq+1 LINE INPUT#3, ABCS$(Dxq) WEND Dzz=0 WHILE Lmn<1 Dzz=Dzz+1 IF UsernaMe$=LEFT$(ABCS$(Dzz),UsernaMe) THEN Lmn=5:Dab=Dzz IF Dzz=Dxq AND Lmn<>5 THEN Lmn=2 WEND IF Lmn=5 THEN Ddt=5:GetUserID$=RIGHT$(ABCS$(Dab),LEN(ABCS$(Dab))-UsernaMe) IF Lmn=2 AND Dch=6 THEN Ddt=3 CLOSE#3 WEND IF Ddt=3 THEN a$=r$+"No Such User.":GOSUB Modem:GOTO UserEdit GetUserID=VAL(GetUserID$) MoreGetUser: IF detedt=1 THEN a$=r$+"Enter User's ID:":GOSUB A1:IF LEFT$(t$,1)=CHR$(10) OR LEFT$(t$,1)=CHR$(13) THEN UserEdit IF detedt=1 THEN GetUserID$=LEFT$(t$,LEN(t$)-1):GetUserID=VAL(t$) CLOSE#4:OPEN "R", #4, "df1:USER",120 FIELD #4, 1 AS check$,9 AS N1$,15 AS N2$,10 AS Co$,15 AS Adr$,10 AS CI$,10 AS STA$,3 AS AG$,9 AS PAS$,3 AS B1$,3 AS B2$,3 AS B3$,3 AS B4$,3 AS B5$,3 AS B6$,3 AS B7$,3 AS B8$,3 AS B9$,1 AS EM1$,1 AS EM2$,1 AS EM3$,1 AS EM4$,1 AS EM5$,3 AS Valu$ FIELD #4, 117 AS dump$,1 AS Vte1$,1 AS Vte2$,1 AS Vte3$ GET#4, GetUserID GetName1$=N1$:GetName2$=N2$:GetAddr$=Adr$:GetComp$=Co$:GetCity$=CI$ GetState$=STA$:GetAge$=AG$:GetPass$=PAS$:GetChk$=check$:GetVaru$=Valu$ GetB1$=B1$:GetB2$=B2$:GetB3$=B3$:GetB4$=B4$:GetB5$=B5$:GetB6$=B6$:GetB7$=B7$:GetB8$=B8$:GetB9$=B9$ GetE1$=EM1$:GetE2$=EM2$:GetE3$=EM3$:GetE4$=EM4$:GetE5$=EM5$ GetVte1$=Vte1$:GetVte2$=Vte2$:GetVte3$=Vte3$:CLOSE#4 GOSUB ShowUserInfo:GOTO UserEdit ShowUserInfo: ewan$=SPACE$(5) a$=r$+"1)First Name:"+GetName1$+"2)Last Name:"+GetName2$+r$+"3)Address:"+GetAddr$:GOSUB Modem a$=r$+"4)City:"+GetCity$+r$+"5)State:"+GetState$+r$+"6)Computer:"+GetComp$:GOSUB Modem a$=r$+"7)Age:"+GetAge$+r$+"8)Password:"+GetPass$+r$+"9)Valid. Level:"+GetVaru$:GOSUB Modem a$=r$+"10)HM Board1:"+GetB1$+ewan$+"11)HM Board2:"+GetB2$+ewan$+"12)HM Board3:"+GetB3$:GOSUB Modem a$=r$+"13)HM Board4:"+GetB4$+ewan$+"14)HM Board5:"+GetB5$+ewan$+"15)HM Board6:"+GetB6$:GOSUB Modem a$=r$+"16)HM Board7:"+GetB7$+ewan$+"17)HM Board8:"+GetB8$+ewan$+"18)HM Board9:"+GetB9$:GOSUB Modem a$=r$+"19)Mail1:"+GetE1$+ewan$+"20)Mail2:"+GetE2$+ewan$+"21)Mail3:"+GetE3$+ewan$+"22)Mail4:"+GetE4$+ewan$+"23)Mail5:"+GetE5$:GOSUB Modem a$=r$+"24)Check$:"+GetChk$:GOSUB Modem a$=r$+"25)Vote1:"+GetVte1$+ewan$+"26)Vote2:"+GetVte2$+ewan$+"27)Vote3:"+GetVte3$:GOSUB Modem RETURN PrintUser: ewan$=SPACE$(5) OPEN "O", #5,"Lpt1:" a$=r$+"1)First Name:"+GetName1$+r$+"2)Last Name:"+GetName2$+r$+"3)Address:"+GetAddr$ PRINT#5,a$ a$=r$+"4)City:"+GetCity$+r$+"5)State:"+GetState$+r$+"6)Computer:"+GetComp$ PRINT#5,a$ a$=r$+"7)Age:"+GetAge$+r$+"8)Password:"+GetPass$+r$+"9)Valid. Level:"+GetVaru$ PRINT#5,a$ a$=r$+"10)HM Board1:"+GetB1$+ewan$+"11)HM Board2:"+GetB2$+ewan$+"12)HM Board3:"+GetB3$ PRINT#5,a$ a$=r$+"13)HM Board4:"+GetB4$+ewan$+"14)HM Board5:"+GetB5$+ewan$+"15)HM Board6:"+GetB6$ PRINT#5,a$ a$=r$+"16)HM Board7:"+GetB7$+ewan$+"17)HM Board8:"+GetB8$+ewan$+"18)HM Board9:"+GetB9$ PRINT#5,a$ a$=r$+"19)Mail1:"+GetE1$+ewan$+"20)Mail2:"+GetE2$+ewan$+"21)Mail3:"+GetE3$+ewan$+"22)Mail4:"+GetE4$+ewan$+"23)Mail5:"+GetE5$ PRINT#5,a$ a$=r$+"25)Vote1:"+GetVte1$+ewan$+"26)Vote2:"+GetVte2$+ewan$+"27)Vote3:"+GetVte3$ PRINT#5,a$ CLOSE#5:RETURN ChangeUser: a$=r$+"Change which option (1-27):":GOSUB A1:IF LEFT$(t$,1)=CHR$(10) OR LEFT$(t$,1)=CHR$(13) THEN UserEdit lable=VAL(t$):IF lable<1 OR lable>27 THEN UserEdit IF lable=9 THEN ValidChangeUser a$=r$+"Change to:":GOSUB A1:IF LEFT$(t$,1)=CHR$(10) OR LEFT$(t$,1)=CHR$(13) THEN UserEdit MoreChangeUser: IF lable=1 THEN GetName1$=UCASE$(LEFT$(t$,LEN(t$)-1)) IF lable=2 THEN GetName2$=UCASE$(LEFT$(t$,LEN(t$)-1)) IF lable=3 THEN GetAddr$=UCASE$(LEFT$(t$,LEN(t$)-1)) IF lable=4 THEN GetCity$=UCASE$(LEFT$(t$,LEN(t$)-1)) IF lable=5 THEN GetState$=UCASE$(LEFT$(t$,LEN(t$)-1)) IF lable=6 THEN GetComp$=UCASE$(LEFT$(t$,LEN(t$)-1)) IF lable=7 THEN GetAge$=LEFT$(t$,LEN(t$)-1) IF lable=8 THEN GetPass$=UCASE$(LEFT$(t$,LEN(t$)-1)) IF lable=10 THEN GetB1$=UCASE$(LEFT$(t$,LEN(t$)-1)) IF lable=11 THEN GetB2$=UCASE$(LEFT$(t$,LEN(t$)-1)) IF lable=12 THEN GetB3$=UCASE$(LEFT$(t$,LEN(t$)-1)) IF lable=13 THEN GetB4$=UCASE$(LEFT$(t$,LEN(t$)-1)) IF lable=14 THEN GetB5$=UCASE$(LEFT$(t$,LEN(t$)-1)) IF lable=15 THEN GetB6$=UCASE$(LEFT$(t$,LEN(t$)-1)) IF lable=16 THEN GetB7$=UCASE$(LEFT$(t$,LEN(t$)-1)) IF lable=17 THEN GetB8$=UCASE$(LEFT$(t$,LEN(t$)-1)) IF lable=18 THEN GetB9$=UCASE$(LEFT$(t$,LEN(t$)-1)) IF lable=19 THEN GetE1$=UCASE$(LEFT$(t$,LEN(t$)-1)) IF lable=20 THEN GetE2$=UCASE$(LEFT$(t$,LEN(t$)-1)) IF lable=21 THEN GetE3$=UCASE$(LEFT$(t$,LEN(t$)-1)) IF lable=22 THEN GetE4$=UCASE$(LEFT$(t$,LEN(t$)-1)) IF lable=23 THEN GetE5$=UCASE$(LEFT$(t$,LEN(t$)-1)) IF lable=24 AND Veru$="021" THEN GetChk$=UCASE$(LEFT$(t$,LEN(t$)-1)) IF lable=24 AND Veru$<>"021" THEN a$=r$+"Change not allowed.":GOSUB Modem IF lable=25 THEN GetVte1$=LEFT$(t$,1) IF lable=26 THEN GetVte2$=LEFT$(t$,1) IF lable=27 THEN GetVte3$=LEFT$(t$,1) GOSUB ShowUserInfo:GOTO UserEdit ValidChangeUser: a$=r$+"1)New User:000":GOSUB Modem a$=r$+"2)Validated User:007":GOSUB Modem a$=r$+"3)Assistant Sysop:014":GOSUB Modem a$=r$+"4)Sysop:021":GOSUB Modem a$=r$+" Which Level (1-4):":GOSUB A1:MenS$=LEFT$(t$,1) IF MenS$="1" THEN GetVaru$="000":GOSUB ShowUserInfo:GOTO UserEdit IF MenS$="2" THEN GetVaru$="007":GOSUB ShowUserInfo:GOTO UserEdit IF Veru$<>"021" THEN a$=r$+"Command not allowed":GOSUB Modem:GOTO UserEdit IF MenS$="3" THEN GetVaru$="014":GOSUB ShowUserInfo:GOTO UserEdit IF MenS$="4" THEN GetVaru$="021":GOSUB ShowUserInfo:GOTO UserEdit GOTO ValidChangeUser SaveUser: CLOSE#4:OPEN "R", #4, "df1:USER",120 FIELD #4, 1 AS check$,9 AS N1$,15 AS N2$,10 AS Co$,15 AS Adr$,10 AS CI$,10 AS STA$,3 AS AG$,9 AS PAS$,3 AS B1$,3 AS B2$,3 AS B3$,3 AS B4$,3 AS B5$,3 AS B6$,3 AS B7$,3 AS B8$,3 AS B9$,1 AS EM1$,1 AS EM2$,1 AS EM3$,1 AS EM4$,1 AS EM5$,3 AS Valu$ FIELD #4, 117 AS dump$,1 AS Vte1$,1 AS Vte2$,1 AS Vte3$ GET#4, GetUserID LSET N1$=GetName1$:LSET N2$=GetName2$:LSET Adr$=GetAddr$ LSET Co$=GetComp$:LSET CI$=GetCity$:LSET STA$=GetState$ LSET AG$=GetAge$:LSET PAS$=GetPass$:LSET Valu$=GetVaru$ LSET B1$=GetB1$:LSET B2$=GetB2$:LSET B3$=GetB3$ LSET B4$=GetB4$:LSET B5$=GetB5$:LSET B6$=GetB6$ LSET B7$=GetB7$:LSET B8$=GetB8$:LSET B9$=GetB9$ LSET EM1$=GetE1$:LSET EM2$=GetE2$:LSET EM3$=GetE3$:LSET EM4$=GetE4$ LSET EM5$=GetE5$:LSET check$=GetChk$ LSET Vte1$=GetVte1$:LSET Vte2$=GetVte2$:LSET Vte3$=GetVte3$ PUT#4,GetUserID CLOSE#5:CLOSE#4 GOTO UserEdit UserFilePrint: CLOSE#4:OPEN "R", #4, "df1:USER",120 FIELD #4, 1 AS check$,9 AS N1$,15 AS N2$,10 AS Co$,15 AS Adr$,10 AS CI$,10 AS STA$,3 AS AG$,9 AS PAS$,3 AS B1$,3 AS B2$,3 AS B3$,3 AS B4$,3 AS B5$,3 AS B6$,3 AS B7$,3 AS B8$,3 AS B9$,1 AS EM1$,1 AS EM2$,1 AS EM3$,1 AS EM4$,1 AS EM5$,3 AS Valu$ FIELD #4, 117 AS dump$,1 AS Vte1$,1 AS Vte2$,1 AS Vte3$ Dch=0:Ddd=0 WHILE Dch<1 Ddd=Ddd+1 GET#4, Ddd IF check$<>"P" THEN Dch=1 GetName1$=N1$:GetName2$=N2$:GetAddr$=Adr$:GetComp$=Co$:GetCity$=CI$ GetState$=STA$:GetAge$=AG$:GetPass$=PAS$:GetChk$=check$:GetVaru$=Valu$ GetB1$=B1$:GetB2$=B2$:GetB3$=B3$:GetB4$=B4$:GetB5$=B5$:GetB6$=B6$:GetB7$=B7$:GetB8$=B8$:GetB9$=B9$ GetE1$=E1$:GetE2$=E2$:GetE3$=E3$:GetE4$=E4$:GetE5$=E5$ GetVte1$=Vte1$:GetVte2$=Vte2$:GetVte3$=Vte3$ GOSUB PrintUser WEND CLOSE#5:CLOSE#4 GOTO UserMaint UserSearch: a$=r$+"Search for:":GOSUB Modem a$=r$+"1)First Name 2)Last Name 3)Computer Type":GOSUB Modem a$=r$+"4)City 5)State":GOSUB A1:IF LEFT$(t$,1)=CHR$(10) OR IF LEFT$(t$,1)=CHR$(13) THEN UserMaint lable=VAL(t$):IF lable<1 OR lable>5 THEN UserMaint a$=r$+"Enter Search String:":GOSUB A1:SearStr$=UCASE$(LEFT$(t$,LEN(t$)-1)) CLOSE#4:OPEN "R", #4, "df1:USER",120 FIELD #4, 1 AS check$,9 AS N1$,15 AS N2$,10 AS Co$,15 AS Adr$,10 AS CI$,10 AS STA$,3 AS AG$,9 AS PAS$,3 AS B1$,3 AS B2$,3 AS B3$,3 AS B4$,3 AS B5$,3 AS B6$,3 AS B7$,3 AS B8$,3 AS B9$,1 AS EM1$,1 AS EM2$,1 AS EM3$,1 AS EM4$,1 AS EM5$,3 AS Valu$ FIELD #4, 117 AS dump$,1 AS Vte1$,1 AS Vte2$,1 AS Vte3$ Dch=0:Ddd=0 WHILE Dch<>1 Ddd=Ddd+1 GET#4, Ddd IF check$<>"P" THEN Dch=1 GetName1$=N1$:GetName2$=N2$:GetAddr$=Adr$:GetComp$=Co$:GetCity$=CI$ GetState$=STA$:GetAge$=AG$:GetPass$+PAS$:GetChk$=check$:GetVaru$=Valu$ GetB1$=B1$:GetB2$=B2$:GetB3$=B3$:GetB4$=B4$:GetB5$=B5$:GetB6$=B6$:GetB7$=B7$:GetB8$=B8$:GetB9$=B9$ GetE1$=E1$:GetE2$=E2$:GetE3$=E3$:GetE4$=E4$:GetE5$=E5$ GetVte1$=Vte1$:GetVte2$=Vte2$:GetVte3$=Vte3$ IF lable=1 AND SearStr$=LEFT$(N1$,LEN(SearStr$) THEN GOSUB PrintUser IF lable=2 AND SearStr$=LEFT$(N2$,LEN(SearStr$) THEN GOSUB PrintUser IF lable=3 AND SearStr$=LEFT$(Co$,LEN(SearStr$) THEN GOSUB PrintUser IF lable=4 AND SearStr$=LEFT$(CI$,LEN(SearStr$) THEN GOSUB PrintUser IF lable=5 AND SearStr$=LEFT$(STA$,LEN(SearStr$) THEN GOSUB PrintUser WEND CLOSE#5:CLOSE#4 GOTO UserMaint Teflon: IF teetse=1 THEN a$=r$+"Sorry, not allowed.":GOSUB Modem:RETURN IF teetse=0 THEN ltomr=1:teetse=1:RETURN RETURN